从Java中的数组中删除最后一个元素

您所在的位置:网站首页 java array 删除元素 从Java中的数组中删除最后一个元素

从Java中的数组中删除最后一个元素

2023-07-08 13:37| 来源: 网络整理| 查看: 265

这篇文章将讨论如何从 Java 中的数组中删除最后一个元素。

由于在 Java 中无法更改数组的大小,因此您无法从中删除任何元素。但是,您可以创建一个新数组,然后将原始数组中的所有元素复制到新数组中,最后一个除外。有几种方法可以做到这一点:

1.使用 Arrays.copyOf() 方法

最简单的解决方案是从数组中删除最后一个元素是使用 Arrays.copyOf() 方法将原始数组的内容复制到一个小一号的新数组中。这 Arrays 类提供了几个重载版本的 copyOf() 所有原始类型的方法。

1234567891011121314 import java.util.Arrays; public class Main {    public static int[] removeLastElement(int[] arr) {        return Arrays.copyOf(arr, arr.length - 1);    }     public static void main(String[] args) {        int[] arr = {5, 3, 4, 7, 6, 8};         arr = removeLastElement(arr);        System.out.println(Arrays.toString(arr));    }}

下载  运行代码

输出: [5, 3, 4, 7, 6]

  您还可以使用 Arrays.copyOfRange() 方法将数组的指定范围复制到新数组中。

1234567891011121314 import java.util.Arrays; public class Main {    public static int[] removeLastElement(int[] arr) {        return Arrays.copyOfRange(arr, 0, arr.length - 1);    }     public static void main(String[] args) {        int[] arr = {5, 3, 4, 7, 6, 8};         arr = removeLastElement(arr);        System.out.println(Arrays.toString(arr));    }}

下载  运行代码

输出: [5, 3, 4, 7, 6]

2.使用 System.arraycopy() 方法

另一种可行的选择是利用 System.arraycopy() 方法,它将指定范围从指定的源数组复制到目标数组中的指定位置。

12345678910111213141516 import java.util.Arrays; public class Main {    public static int[] removeLastElement(int[] arr) {        int[] result = new int[arr.length - 1];        System.arraycopy(arr, 0, result, 0, arr.length - 1);        return result;    }     public static void main(String[] args) {        int[] arr = {5, 3, 4, 7, 6, 8};         arr = removeLastElement(arr);        System.out.println(Arrays.toString(arr));    }}

下载  运行代码

输出: [5, 3, 4, 7, 6]

3.使用 IntStream.range() 方法

在 Java 8 中,您可以使用 IntStream.range() 生成顺序有序的 IntStream 在两个指定的索引之间。这是此方法删除最后一个元素的完整用法:

123456789101112131415161718 import java.util.Arrays;import java.util.stream.IntStream; public class Main {     public static int[] removeLastElement(int[] arr) {        return IntStream.range(0, arr.length-1)                .map(i -> arr[i])                .toArray();    }     public static void main(String[] args) {        int[] arr = {5, 3, 4, 7, 6, 8};         arr = removeLastElement(arr);        System.out.println(Arrays.toString(arr));    }}

下载  运行代码

输出: [5, 3, 4, 7, 6]

这就是从 Java 中的数组中删除最后一个元素的全部内容。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3